﻿/*
 * This software is the confidential and proprietary
 * information of NetBay
 * Such confidential information should not be disclosed
 * NetBay copyright(c) 2010
 */

#region Using
using System.Collections.Generic;
using System.Runtime.Serialization;
using System.ServiceModel.DomainServices.Server;
using System.ComponentModel.DataAnnotations;
#endregion

namespace NetBay.Core.BusinessEntities
{
    [DataContract]
    public class OcrItem : ReturnObject
    {
        #region Private

        /// <summary>
        /// Index
        /// </summary>
        private Index m_oOcrIndex;

        /// <summary>
        /// List of possible value
        /// </summary>
        private List<string> m_oOcrValueList;

        #endregion

        #region Public

        [DataMember]
        public long Identifier { get; set; }

        /// <summary>
        /// Index value
        /// </summary>
        [Association("Index1", "ForeignKey1", "Key")]
        [Include]
        [DataMember]
        public Index OcrIndex
        {
            get { return m_oOcrIndex; }
            set {
                ForeignKey1 = value.Key;
                m_oOcrIndex = value;
            }
        }

        /// <summary>
        /// Ocr list value
        /// </summary>
        [DataMember]
        public List<string> OcrValueList
        {
            get { return m_oOcrValueList; }
            set { m_oOcrValueList = value; }
        }

        #endregion

        #region Init/Constructor
        /// <summary>
        /// Default constructor 
        /// </summary>
        public OcrItem()
        {
            OcrIndex = new Index();
            OcrValueList = new List<string>();
        }

        public OcrItem(Index P_oIndex, List<string> P_oListOcrValue)
            :this()
        {
            OcrIndex = P_oIndex;
            OcrValueList = P_oListOcrValue;
        }

        #endregion


    }
}
